package com.xinbochuang.machine.test;

import java.util.List;

public class Feature {


    /**
     * type : Feature
     * properties : {"SmUserID":0,"EntityHandle":1841,"EntityType":"lwPolyLine","Layer":"equ","LayerFroze":0,"LayerLocked":0,"LayerOn":1,"Elevation":0,"Thickness":0,"ColorIndex":1,"LineStyle":"CONTINUOUS","BlockName":"","BlockRotation":0,"LineWidth":0,"X":0,"Y":0,"Z":0,"Radius":0,"StartAngle":0,"EndAngle":0}
     * geometry : {"type":"GeometryCollection","geometries":[{"type":"LineString","coordinates":[[-606874.1,-1841343.9],[-608074.1,-1841343.9]]},{"type":"LineString","coordinates":[[-608074.1,-1841343.9],[-608074.1,-1840743.9]]},{"type":"LineString","coordinates":[[-608074.1,-1840743.9],[-606874.1,-1840743.9]]},{"type":"LineString","coordinates":[[-606874.1,-1840743.9],[-606874.1,-1841343.9]]}]}
     */

    private String type;
    private PropertiesBean properties;
    private GeometryBean geometry;

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public PropertiesBean getProperties() {
        return properties;
    }

    public void setProperties(PropertiesBean properties) {
        this.properties = properties;
    }

    public GeometryBean getGeometry() {
        return geometry;
    }

    public void setGeometry(GeometryBean geometry) {
        this.geometry = geometry;
    }

    public static class PropertiesBean {
        /**
         * SmUserID : 0
         * EntityHandle : 1841
         * EntityType : lwPolyLine
         * Layer : equ
         * LayerFroze : 0
         * LayerLocked : 0
         * LayerOn : 1
         * Elevation : 0
         * Thickness : 0
         * ColorIndex : 1
         * LineStyle : CONTINUOUS
         * BlockName :
         * BlockRotation : 0
         * LineWidth : 0
         * X : 0
         * Y : 0
         * Z : 0
         * Radius : 0
         * StartAngle : 0
         * EndAngle : 0
         */

        private int SmUserID;
        private int EntityHandle;
        private String EntityType;
        private String Layer;
        private int LayerFroze;
        private int LayerLocked;
        private int LayerOn;
        private int Elevation;
        private int Thickness;
        private int ColorIndex;
        private String LineStyle;
        private String BlockName;
        private int BlockRotation;
        private int LineWidth;
        private int X;
        private int Y;
        private int Z;
        private int Radius;
        private int StartAngle;
        private int EndAngle;

        public int getSmUserID() {
            return SmUserID;
        }

        public void setSmUserID(int SmUserID) {
            this.SmUserID = SmUserID;
        }

        public int getEntityHandle() {
            return EntityHandle;
        }

        public void setEntityHandle(int EntityHandle) {
            this.EntityHandle = EntityHandle;
        }

        public String getEntityType() {
            return EntityType;
        }

        public void setEntityType(String EntityType) {
            this.EntityType = EntityType;
        }

        public String getLayer() {
            return Layer;
        }

        public void setLayer(String Layer) {
            this.Layer = Layer;
        }

        public int getLayerFroze() {
            return LayerFroze;
        }

        public void setLayerFroze(int LayerFroze) {
            this.LayerFroze = LayerFroze;
        }

        public int getLayerLocked() {
            return LayerLocked;
        }

        public void setLayerLocked(int LayerLocked) {
            this.LayerLocked = LayerLocked;
        }

        public int getLayerOn() {
            return LayerOn;
        }

        public void setLayerOn(int LayerOn) {
            this.LayerOn = LayerOn;
        }

        public int getElevation() {
            return Elevation;
        }

        public void setElevation(int Elevation) {
            this.Elevation = Elevation;
        }

        public int getThickness() {
            return Thickness;
        }

        public void setThickness(int Thickness) {
            this.Thickness = Thickness;
        }

        public int getColorIndex() {
            return ColorIndex;
        }

        public void setColorIndex(int ColorIndex) {
            this.ColorIndex = ColorIndex;
        }

        public String getLineStyle() {
            return LineStyle;
        }

        public void setLineStyle(String LineStyle) {
            this.LineStyle = LineStyle;
        }

        public String getBlockName() {
            return BlockName;
        }

        public void setBlockName(String BlockName) {
            this.BlockName = BlockName;
        }

        public int getBlockRotation() {
            return BlockRotation;
        }

        public void setBlockRotation(int BlockRotation) {
            this.BlockRotation = BlockRotation;
        }

        public int getLineWidth() {
            return LineWidth;
        }

        public void setLineWidth(int LineWidth) {
            this.LineWidth = LineWidth;
        }

        public int getX() {
            return X;
        }

        public void setX(int X) {
            this.X = X;
        }

        public int getY() {
            return Y;
        }

        public void setY(int Y) {
            this.Y = Y;
        }

        public int getZ() {
            return Z;
        }

        public void setZ(int Z) {
            this.Z = Z;
        }

        public int getRadius() {
            return Radius;
        }

        public void setRadius(int Radius) {
            this.Radius = Radius;
        }

        public int getStartAngle() {
            return StartAngle;
        }

        public void setStartAngle(int StartAngle) {
            this.StartAngle = StartAngle;
        }

        public int getEndAngle() {
            return EndAngle;
        }

        public void setEndAngle(int EndAngle) {
            this.EndAngle = EndAngle;
        }
    }

    public static class GeometryBean {
        /**
         * type : GeometryCollection
         * geometries : [{"type":"LineString","coordinates":[[-606874.1,-1841343.9],[-608074.1,-1841343.9]]},{"type":"LineString","coordinates":[[-608074.1,-1841343.9],[-608074.1,-1840743.9]]},{"type":"LineString","coordinates":[[-608074.1,-1840743.9],[-606874.1,-1840743.9]]},{"type":"LineString","coordinates":[[-606874.1,-1840743.9],[-606874.1,-1841343.9]]}]
         */

        private String type;
        private List<GeometriesBean> geometries;
        private List<List<Double>> coordinates;

        public String getType() {
            return type;
        }

        public void setType(String type) {
            this.type = type;
        }

        public List<GeometriesBean> getGeometries() {
            return geometries;
        }

        public void setGeometries(List<GeometriesBean> geometries) {
            this.geometries = geometries;
        }

        public List<List<Double>> getCoordinates() {
            return coordinates;
        }

        public void setCoordinates(List<List<Double>> coordinates) {
            this.coordinates = coordinates;
        }

        public static class GeometriesBean {
            /**
             * type : LineString
             * coordinates : [[-606874.1,-1841343.9],[-608074.1,-1841343.9]]
             */

            private String type;
            private List<List<Double>> coordinates;

            public String getType() {
                return type;
            }

            public void setType(String type) {
                this.type = type;
            }

            public List<List<Double>> getCoordinates() {
                return coordinates;
            }

            public void setCoordinates(List<List<Double>> coordinates) {
                this.coordinates = coordinates;
            }
        }
    }
}
